/**
 * easyui扩展
 * 
 * 
 */

$.fn.panel.defaults.loadingMessage = '数据加载中，请稍候……';

$.fn.treegrid.defaults.method = 'get';
$.fn.datagrid.defaults.method = 'get';

$.fn.datagrid.defaults.onLoadError = function(XMLHttpRequest) {/* 扩展dataGrid出现错误的提示 */
	$.messager.show({
		title:'提示',
		msg:XMLHttpRequest.responseText,
		timeout:3000,
		showType:'slide'
	});
};

$.parser.onComplete = function() {/* 页面所有easyui组件渲染成功后，隐藏等待信息 */
	window.setTimeout(function() {
		$('#index_div_pageLoading').fadeOut(100);
	}, 500);
};

/* 扩展验证两次密码 */
/* 远程查找当前用户名称是否有人使用，和用户名是否非法。 */
$.extend($.fn.validatebox.defaults.rules, {
	eqPassword : {
		validator : function(value, param) {
			return value == $(param[0]).val();
		},
		message : '密码不一致！'
	},
	validateLoginName : {
		validator : function(value, param) {
			if (/^[a-zA-Z][a-zA-Z0-9_]{2,15}$/i.test(value)) {
				var ret = false;
				$.ajax({
					url : param[0],
					dataType : "json",
					data : {
						"data" : value
					},
					async : false,
					cache : false,
					type : 'GET',
					success : function(data) {
						ret = data.success;
					}
				});
				if(ret) {
					this.message = '名称已被使用！';
				}
				return ret;
			} else {
				this.message = '请输入小写字母';
				return false;
			}
		},
		message : null
	},
	validateSaveDir : {
		validator : function(value, param) {
			if (/^\/[a-z]*/.test(value)) {
				var ret = false;
				$.ajax({
					url : param[0],
					dataType : "json",
					data : {
						"data" : value
					},
					async : false,
					cache : false,
					type : 'GET',
					success : function(data) {
						ret = data.success;
					}
				});
				this.message = '名称已被使用！';
				return ret;
			} else {
				this.message = '请输入小写字母并以/开头';
				return false;
			}
		},
		message : null
	},
	idcard : {// 验证身份证 
        validator : function(value) {
            return idCardNoUtil.checkIdCardNo(value);
        },
        message : '身份证号码格式不正确'
    },
    currency : {// 验证货币 
        validator : function(value) {
            return /^\d+(\.\d+)?$/i.test(value);
        },
        message : '货币格式不正确'
    },
    integer : {// 验证整数
        validator : function(value) {
            return /^[+-]?[1-9]*\d+$/i.test(value);
        },
        message : '请输入整数'
    },
    mobile : {// 验证手机号码
        validator : function(value) {
            return /^(13|15|18)\d{9}$/i.test(value);
        },
        message : '手机号码格式不正确'
    },
    intOrFloat : {// 验证整数或小数
        validator : function(value) {
            return /^\d+(\.\d+)?$/i.test(value);
        },
        message : '请输入数字'
    },
    english : {// 验证英语
        validator : function(value) {
            return /^[A-Za-z]+$/i.test(value);
        },
        message : '请输入英文'
    },
    username : {// 验证用户名
        validator : function(value) {
            return /^[a-zA-Z][a-zA-Z0-9_]{3,15}$/i.test(value);
        },
        message : '用户名不合法（字母开头，允许2-15字节，允许字母数字下划线）'
    }
});

$.extend($.fn.datagrid.defaults.editors, {
	my97 : {/* 扩展my97日期时间控件在datagrid编辑器中使用 */
		init : function(container, options) {
			var input = $('<input class="Wdate" onclick="WdatePicker({dateFmt:\'yyyy-MM-dd HH:mm:ss\',readOnly:true});"  />').appendTo(container);
			return input;
		},
		getValue : function(target) {
			return $(target).val();
		},
		setValue : function(target, value) {
			$(target).val(value);
		},
		resize : function(target, width) {
			var input = $(target);
			if ($.boxModel == true) {
				input.width(width - (input.outerWidth() - input.width()));
			} else {
				input.width(width);
			}
		}
	}
});
